package com.briup.smartlab.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.briup.smartlab.bean.Labs;
import com.briup.smartlab.bean.Log;
import com.briup.smartlab.dao.LogMapper;
import com.briup.smartlab.service.ILogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service //ioc创建service层对象
public class LogServiceImpl implements ILogService {
    @Autowired //获取dao层创建Mapper对象
    private LogMapper logMapper;


    @Override
    public Page<Log> findByPage(Integer pageNum, Integer pageSize, String key, String start, String end) {
        /*
        * 扩展功能:
        * 1.考虑当分页参数判断不合法，如何提示用户？ 当前页面超过 范围 小于0
        * 2.考虑可以处理参数：用户名：  合法：jack   “jack   ” ---> "jack"
        * 3.考虑提示用户参数选择范围问题： 大于2022年10月  小于2020年1月
        * */


        //1.创建分页对象，表示分页信息
        Page<Log> page = new Page<>(pageNum, pageSize, true);
        //2.设置条件构造器
        LambdaQueryWrapper<Log> wrapper = new LambdaQueryWrapper<>();
        wrapper.like(Log::getUsername,key);
                //缺：根据开始时间和结束时间限定日志的范围
        //3.执行sql
        Page<Log> logPage = logMapper.selectPage(page, wrapper);

        return logPage;
    }

    @Override
    public void save(Log log) {

    }
}
